package collection;
import java.util.HashSet;
import java.util.LinkedHashSet;
import java.util.Set;
/**
 * Set接口
 * 1.Set接口继承Collection接口，为不可重复，没有下标的集合，有无序的也有有序的
 * 2.Set接口有两个常见的实现类
 *   1）HashSet：无序(存取不一致)，不可重复，没有不标
 *   2)LinkedHashSet：有序(存取一致)，不可重复，没有下标-----继承HashSet
 */
public class SetDemo {
    public static void main(String[] args) {
        Set<Point> s = new LinkedHashSet<>();//有序
        //Set<Point> s = new HashSet<>();//无序
        s.add(new Point(11,2));
        s.add(new Point(3,4));
        s.add(new Point(52,6));
        s.add(new Point(7,8));
        //添加失败，因为Set是不可重复集，是否重复是依据equals()+hashCode来判断的
        s.add(new Point(11,2));
        System.out.println(s);//[(3, 4), (7, 8), (52, 6), (11, 2)]

        //将add()添加的结果复制给b，添加成功则为true，添加失败则为false
        boolean b = s.add(new Point(7,8));
        System.out.println(b);//false
        System.out.println(s);//[(3, 4), (7, 8), (52, 6), (11, 2)]

    }
}
